/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package dao;

import dao.Conexao;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JOptionPane;
import modelo.Cidade;
import modelo.LocaisVisitados;



/**
 *
 * @author marcieli
 */
public class CidadeDAO {
             public Boolean Excluir(Cidade obj ) {
        Boolean retorno = false;
        String sql = "DELETE FROM cidade WHERE cidadeid =? ";
        PreparedStatement pst = Conexao.getPreparedStatement(sql);
        
        try{       
        pst.setInt(1, obj.getCodigo());
           
             Integer resultado = pst.executeUpdate();
            
            if(resultado > 0){
            //executa o DELETE
                
                retorno=true;
                    JOptionPane.showMessageDialog(null, "Excluído com sucesso!");
                
            } else {
                retorno = false;
                JOptionPane.showMessageDialog(null, "Não excluido");
            }

        } catch (SQLException ex) {
            System.out.println("ERROR" + ex.getMessage());
        }
        return retorno;
    

    }

    public List<Cidade> Listar() {
                List<Cidade>  lista = new ArrayList<>();

        String sql = "SELECT * FROM cidade";
        
//prepara o sql para execução
        PreparedStatement pst = Conexao.getPreparedStatement(sql);
        ResultSet resultado;
        try {
            resultado = pst.executeQuery();
           
            while (resultado.next()) {
                    Cidade cidade = new Cidade();
               cidade.setCodigo(resultado.getInt("cidadeid"));
               cidade.setNomeCid(resultado.getString("cidadenome"));
               cidade.setDescricao(resultado.getString("cidadedescricao"));
               cidade.setDica1(resultado.getString("cidadedica1"));
                cidade.setDica2(resultado.getString("cidadedica2"));
                 cidade.setDica3(resultado.getString("cidadedica3"));
                  cidade.setItemValor1(resultado.getString("cidadeitem1"));
                   cidade.setItemValor2(resultado.getString("cidadeitem2"));
                 lista.add(cidade);

            }
            
        } catch (SQLException ex) {
lista = null;
        }
                 return lista;

    }

    public Boolean Cadastrar(Cidade cidade) {
boolean retorno = true;
        String sql = "INSERT INTO cidade" + "(cidadenome,cidadedescricao,cidadedica1,cidadedica2,cidadedica3,cidadeitem1,cidadeitem2) VALUES (?,?,?,?,?,?,?)";

      
        PreparedStatement pst = Conexao.getPreparedStatement(sql);
        try {
            pst.setString(1, cidade.getNomeCid());
            pst.setString(2, cidade.getDescricao());
            pst.setString(3, cidade.getDica1());
             pst.setString(4, cidade.getDica2());
              pst.setString(5, cidade.getDica3());
               pst.setString(6, cidade.getItemValor1());
                pst.setString(7, cidade.getItemValor2());
            Integer resultado = pst.executeUpdate();
            if (resultado > 0) {
                retorno = true;
            }else{
                retorno = false;
            }

        } catch (SQLException ex) {
            System.out.println("ERROR" + ex.getMessage());
            retorno = false;
        }
                 return retorno;
    }
}